When content is transmitted via the Internet, the source chops up the content into smaller, more manageable pieces called “protocol data units.” Examples of protocol data units include, but are not limited to, packets, datagrams, frames, bytes, etc, depending on the protocol used. The protocol data units are then transmitted to the destination where they are re-assembled into the original content.
When a node in the Internet is overwhelmed, it is common for some of the protocol data units to be lost or delayed in transmission. When a protocol data unit is lost, the destination can arrange for the source to re-transmit the lost protocol data unit. When the re-transmitted protocol data unit arrives at the destination, it appears to the end-user as if the protocol data unit were merely delayed.
Some content, like e-mail, is temporally robust and largely insensitive to the delay of protocol data units. In contrast, some content, like Voice-over-Internet-Protocol (“VoIP”) telephony, cannot tolerate large delays.
This discrepancy has lead to a system in which a protocol data unit that carries temporally-sensitive content can request high priority treatment by the Internet. In accordance with this system, each high-priority protocol data unit carries a priority identifier—such as a number in the protocol data unit's Type-Of-Service header—that identifies the protocol data unit's priority. Then, when a protocol data unit reaches a node in the Internet, the node can read the priority identifier and treat the protocol data unit accordingly.
Unfortunately, a uniform priority identification standard does not exist, and, therefore, each node in the Internet has to be configured individually according to the configuration policy of the service provider who owns it. Such individual configuration is tedious and prone to errors, and those errors can have a serious impact on the Internet's ability to provide Voice-over-Internet-Protocol telephony. Therefore, the need exists for a technique for ensuring that a node that carries high-priority and low-priority protocol data units is properly configured.
One solution in the prior art for detecting improperly configured nodes is to send a stream that comprises both high-priority and low-priority protocol data units through a node and to measure whether the high-priority protocol data units are output by the node faster than the low-priority ones. This solution, however, has its disadvantages.
Therefore, the need remains for a technique for a technique for ensuring that a node that carries high-priority and low-priority protocol data units is properly configured.